<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>LiquidFun: b2Fixture Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">LiquidFun
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classb2_fixture-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">b2Fixture Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="b2_fixture_8h_source.html">b2Fixture.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab0e1d6bc1c42e6f779e77db408ab2d24"><td class="memItemLeft" align="right" valign="top">b2Shape::Type&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#ab0e1d6bc1c42e6f779e77db408ab2d24">GetType</a> () const </td></tr>
<tr class="separator:ab0e1d6bc1c42e6f779e77db408ab2d24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa2b73fa212fa53b1c800cccd7a1d31e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classb2_shape.html">b2Shape</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#aaa2b73fa212fa53b1c800cccd7a1d31e">GetShape</a> ()</td></tr>
<tr class="separator:aaa2b73fa212fa53b1c800cccd7a1d31e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ede102030bd041b07fec5c1f082c8c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ede102030bd041b07fec5c1f082c8c9"></a>
const <a class="el" href="classb2_shape.html">b2Shape</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetShape</b> () const </td></tr>
<tr class="separator:a5ede102030bd041b07fec5c1f082c8c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6198a81dcee0fe814d730383ebfa7038"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6198a81dcee0fe814d730383ebfa7038"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a6198a81dcee0fe814d730383ebfa7038">SetSensor</a> (bool sensor)</td></tr>
<tr class="memdesc:a6198a81dcee0fe814d730383ebfa7038"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set if this fixture is a sensor. <br/></td></tr>
<tr class="separator:a6198a81dcee0fe814d730383ebfa7038"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91758c9dca818ca45f3f6427c7e3fc19"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a91758c9dca818ca45f3f6427c7e3fc19">IsSensor</a> () const </td></tr>
<tr class="separator:a91758c9dca818ca45f3f6427c7e3fc19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c5e0d12c174927a4ad550459be334ad"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a2c5e0d12c174927a4ad550459be334ad">SetFilterData</a> (const <a class="el" href="structb2_filter.html">b2Filter</a> &amp;filter)</td></tr>
<tr class="separator:a2c5e0d12c174927a4ad550459be334ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5bc271a6e8082e727b053aead1ae86a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5bc271a6e8082e727b053aead1ae86a9"></a>
const <a class="el" href="structb2_filter.html">b2Filter</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a5bc271a6e8082e727b053aead1ae86a9">GetFilterData</a> () const </td></tr>
<tr class="memdesc:a5bc271a6e8082e727b053aead1ae86a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the contact filtering data. <br/></td></tr>
<tr class="separator:a5bc271a6e8082e727b053aead1ae86a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45d3320f94811d67383c48466165fa26"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45d3320f94811d67383c48466165fa26"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a45d3320f94811d67383c48466165fa26">Refilter</a> ()</td></tr>
<tr class="memdesc:a45d3320f94811d67383c48466165fa26"><td class="mdescLeft">&#160;</td><td class="mdescRight">Call this if you want to establish collision that was previously disabled by <a class="el" href="classb2_contact_filter.html#aac8f6155d1f577d125db587f5269289b">b2ContactFilter::ShouldCollide</a>. <br/></td></tr>
<tr class="separator:a45d3320f94811d67383c48466165fa26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9d6536ef274d768e86ab0a8330921535"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classb2_body.html">b2Body</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a9d6536ef274d768e86ab0a8330921535">GetBody</a> ()</td></tr>
<tr class="separator:a9d6536ef274d768e86ab0a8330921535"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cfc4ed94c4cbfbc0244f11007448431"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cfc4ed94c4cbfbc0244f11007448431"></a>
const <a class="el" href="classb2_body.html">b2Body</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetBody</b> () const </td></tr>
<tr class="separator:a6cfc4ed94c4cbfbc0244f11007448431"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0241952461f6f1a04a3c850306390fd2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a0241952461f6f1a04a3c850306390fd2">GetNext</a> ()</td></tr>
<tr class="separator:a0241952461f6f1a04a3c850306390fd2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb72f9669165143466a1d37d1288785f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb72f9669165143466a1d37d1288785f"></a>
const <a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>GetNext</b> () const </td></tr>
<tr class="separator:adb72f9669165143466a1d37d1288785f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57247425e7c859d7653eec417ec83cdc"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a57247425e7c859d7653eec417ec83cdc">GetUserData</a> () const </td></tr>
<tr class="separator:a57247425e7c859d7653eec417ec83cdc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3db7f89ef4493247d922fe3d96351ad9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3db7f89ef4493247d922fe3d96351ad9"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a3db7f89ef4493247d922fe3d96351ad9">SetUserData</a> (void *data)</td></tr>
<tr class="memdesc:a3db7f89ef4493247d922fe3d96351ad9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the user data. Use this to store your application specific data. <br/></td></tr>
<tr class="separator:a3db7f89ef4493247d922fe3d96351ad9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab875147c7a9df4ff94d224f6aa81a7a9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#ab875147c7a9df4ff94d224f6aa81a7a9">TestPoint</a> (const <a class="el" href="structb2_vec2.html">b2Vec2</a> &amp;p) const </td></tr>
<tr class="separator:ab875147c7a9df4ff94d224f6aa81a7a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a74f61131feda0adb1d4893137404978b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a74f61131feda0adb1d4893137404978b">ComputeDistance</a> (const <a class="el" href="structb2_vec2.html">b2Vec2</a> &amp;p, float32 *distance, <a class="el" href="structb2_vec2.html">b2Vec2</a> *normal, int32 childIndex) const </td></tr>
<tr class="separator:a74f61131feda0adb1d4893137404978b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a614e84f47e8b32b503fa719099ecba79"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a614e84f47e8b32b503fa719099ecba79">RayCast</a> (<a class="el" href="structb2_ray_cast_output.html">b2RayCastOutput</a> *output, const <a class="el" href="structb2_ray_cast_input.html">b2RayCastInput</a> &amp;input, int32 childIndex) const </td></tr>
<tr class="separator:a614e84f47e8b32b503fa719099ecba79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adbfb9b64006abaaa0ca01e6d9e06deea"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#adbfb9b64006abaaa0ca01e6d9e06deea">GetMassData</a> (<a class="el" href="structb2_mass_data.html">b2MassData</a> *massData) const </td></tr>
<tr class="separator:adbfb9b64006abaaa0ca01e6d9e06deea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4e1d9323103975c8931d022b952d04a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#ad4e1d9323103975c8931d022b952d04a">SetDensity</a> (float32 density)</td></tr>
<tr class="separator:ad4e1d9323103975c8931d022b952d04a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5deb4acfb464f3dcb668f081a2c44ff4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5deb4acfb464f3dcb668f081a2c44ff4"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a5deb4acfb464f3dcb668f081a2c44ff4">GetDensity</a> () const </td></tr>
<tr class="memdesc:a5deb4acfb464f3dcb668f081a2c44ff4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the density of this fixture. <br/></td></tr>
<tr class="separator:a5deb4acfb464f3dcb668f081a2c44ff4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a31253b90b87f1fec7256bba92aeb4645"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a31253b90b87f1fec7256bba92aeb4645"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a31253b90b87f1fec7256bba92aeb4645">GetFriction</a> () const </td></tr>
<tr class="memdesc:a31253b90b87f1fec7256bba92aeb4645"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the coefficient of friction. <br/></td></tr>
<tr class="separator:a31253b90b87f1fec7256bba92aeb4645"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0cd91eef5858c8ef1d6b62cc2a34ea2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#ad0cd91eef5858c8ef1d6b62cc2a34ea2">SetFriction</a> (float32 friction)</td></tr>
<tr class="separator:ad0cd91eef5858c8ef1d6b62cc2a34ea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ce4d949ffff6201a117f1e3833953f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ce4d949ffff6201a117f1e3833953f8"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a6ce4d949ffff6201a117f1e3833953f8">GetRestitution</a> () const </td></tr>
<tr class="memdesc:a6ce4d949ffff6201a117f1e3833953f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the coefficient of restitution. <br/></td></tr>
<tr class="separator:a6ce4d949ffff6201a117f1e3833953f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a19c507332e4f7bd04a05f00426f11ee4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a19c507332e4f7bd04a05f00426f11ee4">SetRestitution</a> (float32 restitution)</td></tr>
<tr class="separator:a19c507332e4f7bd04a05f00426f11ee4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abdc2a225110310a481a78cdb14000ca7"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structb2_a_a_b_b.html">b2AABB</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#abdc2a225110310a481a78cdb14000ca7">GetAABB</a> (int32 childIndex) const </td></tr>
<tr class="separator:abdc2a225110310a481a78cdb14000ca7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a57485e73a2063060e320c7176676cd5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57485e73a2063060e320c7176676cd5e"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classb2_fixture.html#a57485e73a2063060e320c7176676cd5e">Dump</a> (int32 bodyIndex)</td></tr>
<tr class="memdesc:a57485e73a2063060e320c7176676cd5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dump this fixture to the log file. <br/></td></tr>
<tr class="separator:a57485e73a2063060e320c7176676cd5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a1f465f3656f098eebfcbc6edf7a9239a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f465f3656f098eebfcbc6edf7a9239a"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Create</b> (<a class="el" href="classb2_block_allocator.html">b2BlockAllocator</a> *allocator, <a class="el" href="classb2_body.html">b2Body</a> *body, const <a class="el" href="structb2_fixture_def.html">b2FixtureDef</a> *def)</td></tr>
<tr class="separator:a1f465f3656f098eebfcbc6edf7a9239a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a279301181668f724c027020a654efe42"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a279301181668f724c027020a654efe42"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Destroy</b> (<a class="el" href="classb2_block_allocator.html">b2BlockAllocator</a> *allocator)</td></tr>
<tr class="separator:a279301181668f724c027020a654efe42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a670f1f687521666da6e92885754970b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a670f1f687521666da6e92885754970b7"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>CreateProxies</b> (<a class="el" href="classb2_broad_phase.html">b2BroadPhase</a> *broadPhase, const <a class="el" href="structb2_transform.html">b2Transform</a> &amp;xf)</td></tr>
<tr class="separator:a670f1f687521666da6e92885754970b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1def068c9ce09e2ebcccc556951b7979"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1def068c9ce09e2ebcccc556951b7979"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>DestroyProxies</b> (<a class="el" href="classb2_broad_phase.html">b2BroadPhase</a> *broadPhase)</td></tr>
<tr class="separator:a1def068c9ce09e2ebcccc556951b7979"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8fd15bfd9a3a7ba05f3831e6f598908"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac8fd15bfd9a3a7ba05f3831e6f598908"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>Synchronize</b> (<a class="el" href="classb2_broad_phase.html">b2BroadPhase</a> *broadPhase, const <a class="el" href="structb2_transform.html">b2Transform</a> &amp;xf1, const <a class="el" href="structb2_transform.html">b2Transform</a> &amp;xf2)</td></tr>
<tr class="separator:ac8fd15bfd9a3a7ba05f3831e6f598908"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:ab8c388182fc7d58d930f6b0aa21d5c60"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab8c388182fc7d58d930f6b0aa21d5c60"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><b>m_density</b></td></tr>
<tr class="separator:ab8c388182fc7d58d930f6b0aa21d5c60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5c9fbdf66290e2608db1ffcea2316b0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5c9fbdf66290e2608db1ffcea2316b0"></a>
<a class="el" href="classb2_fixture.html">b2Fixture</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_next</b></td></tr>
<tr class="separator:ac5c9fbdf66290e2608db1ffcea2316b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a480026124a6b7e88f2ed89832a08d191"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a480026124a6b7e88f2ed89832a08d191"></a>
<a class="el" href="classb2_body.html">b2Body</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_body</b></td></tr>
<tr class="separator:a480026124a6b7e88f2ed89832a08d191"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54fa48dfc8b70a435c8f17f8b7720828"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54fa48dfc8b70a435c8f17f8b7720828"></a>
<a class="el" href="classb2_shape.html">b2Shape</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_shape</b></td></tr>
<tr class="separator:a54fa48dfc8b70a435c8f17f8b7720828"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a314118ee973ebd14e083553fed1e0212"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a314118ee973ebd14e083553fed1e0212"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><b>m_friction</b></td></tr>
<tr class="separator:a314118ee973ebd14e083553fed1e0212"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a343a35683ce4a79d2151761611027d66"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a343a35683ce4a79d2151761611027d66"></a>
float32&#160;</td><td class="memItemRight" valign="bottom"><b>m_restitution</b></td></tr>
<tr class="separator:a343a35683ce4a79d2151761611027d66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0056031e2b2b53e6a4c0ef7a0c87821a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0056031e2b2b53e6a4c0ef7a0c87821a"></a>
<a class="el" href="structb2_fixture_proxy.html">b2FixtureProxy</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>m_proxies</b></td></tr>
<tr class="separator:a0056031e2b2b53e6a4c0ef7a0c87821a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae71b4a0071346aba2eb6f4a764785a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae71b4a0071346aba2eb6f4a764785a4"></a>
int32&#160;</td><td class="memItemRight" valign="bottom"><b>m_proxyCount</b></td></tr>
<tr class="separator:aae71b4a0071346aba2eb6f4a764785a4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a33b66959856506a6d27b32dad0e284c7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33b66959856506a6d27b32dad0e284c7"></a>
<a class="el" href="structb2_filter.html">b2Filter</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_filter</b></td></tr>
<tr class="separator:a33b66959856506a6d27b32dad0e284c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b6b47a8de6d37acf9b980b33b22f634"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b6b47a8de6d37acf9b980b33b22f634"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>m_isSensor</b></td></tr>
<tr class="separator:a4b6b47a8de6d37acf9b980b33b22f634"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60191e5c76bfd115e6c38d78b6cffd8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a60191e5c76bfd115e6c38d78b6cffd8b"></a>
void *&#160;</td><td class="memItemRight" valign="bottom"><b>m_userData</b></td></tr>
<tr class="separator:a60191e5c76bfd115e6c38d78b6cffd8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a010ab52de250e5fe30a45d642f46405b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a010ab52de250e5fe30a45d642f46405b"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2Body</b></td></tr>
<tr class="separator:a010ab52de250e5fe30a45d642f46405b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4bd536c5a7c0587913765bbc2693ceea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bd536c5a7c0587913765bbc2693ceea"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2World</b></td></tr>
<tr class="separator:a4bd536c5a7c0587913765bbc2693ceea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c4ac5df27ec498dd9e4281352b7a789"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6c4ac5df27ec498dd9e4281352b7a789"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2Contact</b></td></tr>
<tr class="separator:a6c4ac5df27ec498dd9e4281352b7a789"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aece264d42f69aed410f5eb3beba6ddf2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aece264d42f69aed410f5eb3beba6ddf2"></a>
class&#160;</td><td class="memItemRight" valign="bottom"><b>b2ContactManager</b></td></tr>
<tr class="separator:aece264d42f69aed410f5eb3beba6ddf2"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A fixture is used to attach a shape to a body for collision detection. A fixture inherits its transform from its parent. Fixtures hold additional non-geometric data such as friction, collision filters, etc. Fixtures are created via <a class="el" href="classb2_body.html#aa4892301e9b9d62ede5e93dad1743894">b2Body::CreateFixture</a>. </p>
<dl class="section warning"><dt>Warning</dt><dd>you cannot reuse fixtures. </dd></dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a74f61131feda0adb1d4893137404978b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Fixture::ComputeDistance </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structb2_vec2.html">b2Vec2</a> &amp;&#160;</td>
          <td class="paramname"><em>p</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float32 *&#160;</td>
          <td class="paramname"><em>distance</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structb2_vec2.html">b2Vec2</a> *&#160;</td>
          <td class="paramname"><em>normal</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32&#160;</td>
          <td class="paramname"><em>childIndex</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Compute the distance from this fixture. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">p</td><td>a point in world coordinates. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="abdc2a225110310a481a78cdb14000ca7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="structb2_a_a_b_b.html">b2AABB</a> &amp; b2Fixture::GetAABB </td>
          <td>(</td>
          <td class="paramtype">int32&#160;</td>
          <td class="paramname"><em>childIndex</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the fixture's AABB. This AABB may be enlarge and/or stale. If you need a more accurate AABB, compute it using the shape and the body transform. </p>

</div>
</div>
<a class="anchor" id="a9d6536ef274d768e86ab0a8330921535"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classb2_body.html">b2Body</a> * b2Fixture::GetBody </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the parent body of this fixture. This is NULL if the fixture is not attached. </p>
<dl class="section return"><dt>Returns</dt><dd>the parent body. </dd></dl>

</div>
</div>
<a class="anchor" id="adbfb9b64006abaaa0ca01e6d9e06deea"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Fixture::GetMassData </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structb2_mass_data.html">b2MassData</a> *&#160;</td>
          <td class="paramname"><em>massData</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the mass data for this fixture. The mass data is based on the density and the shape. The rotational inertia is about the shape's origin. This operation may be expensive. </p>

</div>
</div>
<a class="anchor" id="a0241952461f6f1a04a3c850306390fd2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classb2_fixture.html">b2Fixture</a> * b2Fixture::GetNext </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the next fixture in the parent body's fixture list. </p>
<dl class="section return"><dt>Returns</dt><dd>the next shape. </dd></dl>

</div>
</div>
<a class="anchor" id="aaa2b73fa212fa53b1c800cccd7a1d31e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classb2_shape.html">b2Shape</a> * b2Fixture::GetShape </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the child shape. You can modify the child shape, however you should not change the number of vertices because this will crash some collision caching mechanisms. Manipulating the shape may lead to non-physical behavior. </p>

</div>
</div>
<a class="anchor" id="ab0e1d6bc1c42e6f779e77db408ab2d24"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">b2Shape::Type b2Fixture::GetType </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the type of the child shape. You can use this to down cast to the concrete shape. </p>
<dl class="section return"><dt>Returns</dt><dd>the shape type. </dd></dl>

</div>
</div>
<a class="anchor" id="a57247425e7c859d7653eec417ec83cdc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void * b2Fixture::GetUserData </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Get the user data that was assigned in the fixture definition. Use this to store your application specific data. </p>

</div>
</div>
<a class="anchor" id="a91758c9dca818ca45f3f6427c7e3fc19"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool b2Fixture::IsSensor </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Is this fixture a sensor (non-solid)? </p>
<dl class="section return"><dt>Returns</dt><dd>the true if the shape is a sensor. </dd></dl>

</div>
</div>
<a class="anchor" id="a614e84f47e8b32b503fa719099ecba79"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool b2Fixture::RayCast </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structb2_ray_cast_output.html">b2RayCastOutput</a> *&#160;</td>
          <td class="paramname"><em>output</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="structb2_ray_cast_input.html">b2RayCastInput</a> &amp;&#160;</td>
          <td class="paramname"><em>input</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int32&#160;</td>
          <td class="paramname"><em>childIndex</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Cast a ray against this shape. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">output</td><td>the ray-cast results. </td></tr>
    <tr><td class="paramname">input</td><td>the ray-cast input parameters. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ad4e1d9323103975c8931d022b952d04a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Fixture::SetDensity </td>
          <td>(</td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>density</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set the density of this fixture. This will <em>not</em> automatically adjust the mass of the body. You must call <a class="el" href="classb2_body.html#a109d8567c6ae84c61fce2919fb209c63">b2Body::ResetMassData</a> to update the body's mass. </p>

</div>
</div>
<a class="anchor" id="a2c5e0d12c174927a4ad550459be334ad"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void b2Fixture::SetFilterData </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structb2_filter.html">b2Filter</a> &amp;&#160;</td>
          <td class="paramname"><em>filter</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Set the contact filtering data. This will not update contacts until the next time step when either parent body is active and awake. This automatically calls Refilter. </p>

</div>
</div>
<a class="anchor" id="ad0cd91eef5858c8ef1d6b62cc2a34ea2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Fixture::SetFriction </td>
          <td>(</td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>friction</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set the coefficient of friction. This will <em>not</em> change the friction of existing contacts. </p>

</div>
</div>
<a class="anchor" id="a19c507332e4f7bd04a05f00426f11ee4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void b2Fixture::SetRestitution </td>
          <td>(</td>
          <td class="paramtype">float32&#160;</td>
          <td class="paramname"><em>restitution</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Set the coefficient of restitution. This will <em>not</em> change the restitution of existing contacts. </p>

</div>
</div>
<a class="anchor" id="ab875147c7a9df4ff94d224f6aa81a7a9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool b2Fixture::TestPoint </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="structb2_vec2.html">b2Vec2</a> &amp;&#160;</td>
          <td class="paramname"><em>p</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Test a point for containment in this fixture. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">p</td><td>a point in world coordinates. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="b2_fixture_8h_source.html">b2Fixture.h</a></li>
<li>b2Fixture.cpp</li>
</ul>
</div><!-- contents -->
<!-- Google Analytics -->
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-46159502-1', 'auto');
ga('create', 'UA-49880327-7', 'auto', {'name': 'liquidFunTracker'});
ga('send', 'pageview');
ga('liquidFunTracker.send', 'pageview');
</script>
</body>
</html>
